import java.util.ArrayList;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;

public class TreeMapTest {
    public static void main(String[] args) {
        TreeMap treeMap = new TreeMap();

        String str = "iyashdkjhasd";
        //要求打印a(2)d(2)...

        //第一种方式
        char[] strArray = str.toCharArray();
        System.out.println(strArray);
        //遍历
        for(int i = 0;i<strArray.length;i++){
            if (treeMap.get(strArray[i]) == null){
                treeMap.put(strArray[i],1);
            }

            for (int j = i+1;j<strArray.length;j++){
                if (strArray[i] == strArray[j]){
                    int k = (int) treeMap.get(strArray[i]);
                    k++;
                    treeMap.put(strArray[i],k);
                }else{
                    continue;
                }
            }
        }
        System.out.println(treeMap);

        System.out.println("--------------------------------------");

        //第二种方式
        String s = getCharCount(str);
        System.out.println(s);
    }

    private static String getCharCount(String str) {
        //字符串转数组
        char[] strArray = str.toCharArray();
        //定义map集合
        Map<Character,Integer> map = new TreeMap<Character, Integer>();
        for (int i = 0;i < strArray.length; i++){
            //将数组中的字母作为键去查map表
            Integer value = map.get(strArray[i]);

            //判断值是否为null
            if (value == null){
                map.put(strArray[i],1);
            }else{
                map.put(strArray[i],value+1);
            }
        }
        return map.toString();
    }
}
